define(function(require, exports, module) {
  var $ = require("$");
  require("bootstrap_commonrequire");
  require("moment");
  require("bootstrap-daterangepicker");
  require("daterangepicker.css");
  require('highcharts');
  /*监听窗口大小变化，增强jquery的resize方法，可以激情dom元素*/
  require('js/core/jquery/src/jquery_resize');
  /*添加ztree引用*/
  require("zTreeStyle.css");
  require("ztreeCore");
  require("ztreeExcheck");
  require('select2.css');
  require('select2');
  var store = require('store');
  var bootbox = require('bootbox');
  var loader = require("./loader/loader");
  exports.init = function(param) {

    $(document).ready(function() {
      //蒙版
      loader.loading("数据加载中，请稍后……");
      
      //加载自定义模板-条件区域
      var isSystemAdmin = (store.get("userInfo").userType == -1);
      var tplattrs = {};
      tplattrs.isSystemAdmin = isSystemAdmin;
      // 用于存储items中的数据；判断数据是否为空
      var itemsPro = [];
//    按钮text切换，0为统计图表，1为省市，2为应用名称，3为，4为
      var flag="0";
      var flagApplytype="0";
//      var flagIsv="0";
//      var flagCarrier="0";
      var flagProvince="2";
      
      var template = require("./achievementanalyse.tpl");
      var Widget = require("widget");
      var Component = Widget.extend({
        template : template
      });
      new Component({
        attrs : tplattrs,
        renderTo : queryAreaId
      });

      //获取查询条件
      function getCondition() {

        var querydatewrapper = $('#querydatewrapper').val();
        var isvid = $('#isvName').val();
        var applyid = $('#applyName').val();
        var carrierid = $('#carrierid').val();
        var queryStr = "";

        if (isvid != '' && isvid != null) {
          queryStr += ("isvid=" + isvid + ";");
        }

        if (applyid != '' && applyid != null) {
          queryStr += ("applyid=" + applyid + ";");
        }

        if (carrierid != '' && carrierid != null) {
          queryStr += ("corpid=" + carrierid + ";");
        }

        // 获取时间查询参数
        var daterange = daterangeCom.getPickerRange();
        if (daterange) {
          var daterange = daterange.split("/");
          var startTime = daterange[0];
          var endTime = daterange[1];
          queryStr += "startTime=" + startTime + " 00:00:00;"
          queryStr += "endTime=" + endTime + " 23:59:59;";
        }

        return queryStr;
      }

      // 绑定isv名称下拉列表
      $.ajax({
        type : "POST",
        dataType : "json",
        url : "/user/queryIsv.do",
        async : false,
        success : function(data) {
          $("#isvName").select2({
            placeholder : "请选择ISV名称",
            allowClear : true,
            data : data
          });
        },
        error : function(data) {
          bootbox.alertTimeout('初始化ISV名称数据失败！');
        }
      });

      // 绑定应用下拉列表
      $.ajax({
        type : "POST",
        dataType : "json",
        url : "/condition/applyName.do",
        async : false,
        success : function(data) {
          $("#applyName").select2({
            placeholder : "请选择应用名称",
            allowClear : true,
            data : data
          });
        },
        error : function(data) {
          bootbox.alertTimeout('初始化应用名称数据失败！');
        }
      });

      // 初始化日期范围选择控件
      var DateRange = require('daterangeinput');
      var daterangeAttrs = {
        daterangeId : "querydatewrapper_rang",
        label : "日期"
      };
      var daterangeCom = new DateRange({
        attrs : daterangeAttrs,
        renderTo : 'querydatewrapper'
      });

      daterangeCom.setRangeToToday();

      $("#carrierid").select2({
        placeholder : "请选择企业名称",
        allowClear : true,
        ajax : {
          url : GLOBAL.URL.ADMIN_GETCARRIEROPTIONS,
          dataType : 'json',
          delay : 250,
          data : function(term, pageNo) {
            return {
              q : " c.name like '%" + term + "%' ", // search term
              size : 25,
              start : (pageNo - 1) * 25
            };
          },
          results : function(data, pageNo) {
            var dataObj = eval(data);
            /*if(dataObj.length>0){   //如果没有查询到数据，将会返回空串
              var more = (pageNo*15)<dataObj.length; //用来判断是否还有更多数据可以加载
              return {
                results:dataObj,more:more    
              };
            }else{
                return {results:dataObj};
            }*/
            return {
              results : dataObj
            };
          },
          cache : true
        }
      });

      //加载表单模板和数据
      var Table = require("table");
      var dtUtil = require('datatableutil');

      // 统计维度：省份
      new Table({
        attrs : {
          id : "province_table",
          isHovered : false,
          isStriped : true,
          isBordered : false
        },
        renderTo : param.province_divId

      });

      // 用于按省份进行分组统计
      var datatable_province = $('#province_table').dataTable({
        "sDom" : "<'hidden'<'span6'l><'hidden'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
        "bJQueryUI" : false,
        "oLanguage" : {
          "sUrl" : "/business/js/common/table/src/lang/dataTable.cn.txt"
        },
        "sPaginationType" : "bootstrap", // 分页自带两种样式，full_numbers和two_button(默认)
        'bPaginate' : false, // 是否分页
        "bProcessing" : true, // 当datatable获取数据时候是否显示正在处理提示信息。
        "bServerSide" : true, // 指定服务器端分页
        "bDeferRender" : true,
        "bFilter" : true,
        "bSort" : true,
        "bInfo" : false,
        "sAjaxSource" : "/data/queryByProSimp.do", 
        "iDisplayLength" : DATATABLES_CONFIG.iDisplayLength.DEFAULT, // 默认分页的每页记录数
        "fnServerData" : function(sSource, aoData, fnCallback, oSettings) {

          var queryparam = dtUtil.convert_aoData(aoData);

          //拼接where查询条件
          var cond = getCondition();
          if (cond != '' && cond != null) {
            queryparam.q += cond;
          }
          if (type == "province") {

            // 添加自己的额外参数
            oSettings.jqXHR = $.ajax({
              "dataType" : 'json',
              "contentType" : "application/json;charset=UTF-8",
              "type" : "GET",
              "url" : sSource,
              "data" : queryparam, // 将请求数据转换为后台要求的JSON格式
              "success" : function(json) {
                //隐藏蒙版
                loader.noloading();
                dtUtil.successCallback(json, aoData, fnCallback);
                
                dataChart = json;
                // 获取拼接成json串
                var jsondata = dataChart.data;
                // 获取data中的items属性
                var items = jsondata.items;
                // items的长度需要确定一下，并分别获取其相应属性值
                var itemsLength = items.length;
                
                // 限制数据个数，并将个数适合的items传给itemsPro
                var itemsPro;
                itemsPro = items;
                
                var strRegionname = [];// 省市
                var strRegisternum = [];// 注册用户数
                var strActivenum = [];// 活跃用户数
                var strCallingduration = [];// 通话时长(分钟)
                var strTime = [];// 日期
                
                // 格式化数据
                if(itemsPro[0] != null){
                  // 隐藏图表不存在的html
                  $('#data_error').hide();
                
                  for(var i=0;i<itemsPro.length;i++){
                    var bean = itemsPro[i];
                    strRegionname.push(bean.regionname);
                    strRegisternum.push(bean.registernum);
                    strActivenum.push(bean.activenum);
                    strCallingduration.push(bean.callingduration);
                    strTime.push(bean.time);
                  }
                  
                  new Highcharts.Chart({
                    chart: {
                    //图表放置的容器，DIV
                       renderTo: 'container1',
                    // type: 'bar'
                    //图表类型line(折线图)
                       defaultSeriesType: 'line', 
                    //x轴方向可以缩放 
                       zoomType: 'x'
                    },
                    credits: { 
                    //右下角不显示LOGO (HighCharts.com)
                      enabled: false
                    }, 
                    title: {
                       text: '统计图表'
                    },
                    xAxis: {
                       //x轴标签名称 
                       // categories: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
                       categories: strRegionname,
                       gridLineWidth: 1, //设置网格宽度为1 
                       lineWidth: 2,  //基线宽度 2
                       title: {
                         text: '省份',//标题 
                         // lineWidth: 2, //基线宽度
                         style: {
                           'color': 'red',//刻度字体颜色
                           'fontSize':'16px' //刻度字体大小
                         }
                       },
                       labels: {
                          style: {
                             y:26,//x轴标签位置：距X轴下方26像素 
                             // 'color': 'red',//刻度颜色
                             'fontSize':'14px' //刻度字体大小
                          }
                        }
                    },
                    yAxis: {
                       min : 0,// 不显示负数
                       allowDecimals : false, // 是否允许刻度有小数
                       title: {
                          text: '各种数据',//标题 
                          lineWidth: 2, //基线宽度 
                          min: 0,// 不显示负数
                          style: {
                            'color': 'red',//刻度颜色
                            'fontSize':'16px' //刻度字体大小
                          }
                       },
                       labels: {
                         style: {
                           // 'color': 'red',//刻度颜色
                            'fontSize':'14px' //刻度字体大小
                         }
                       }
                    },
                    legend: {  //图例 
                      layout: 'horizontal',  //图例显示的样式：水平（horizontal）/垂直（vertical） 
                      backgroundColor: '#ffc', //图例背景色 
                      align: 'left',  //图例水平对齐方式 
                      verticalAlign: 'top',  //图例垂直对齐方式 
                      x: 100,  //相对X位移 
                      y: 70,   //相对Y位移 
                      floating: true, //设置可浮动 
                      shadow: true  //设置阴影 
                    }, 
                    exporting: { 
                      enabled: false  //设置导出按钮不可用 
                    },
                    series: [{
                       name: '注册用户数',
                       // data: [bean1.addedusers,bean2.addedusers]
                       data: strRegisternum
                       // data: [-4.6, -2.2, 4.5, 13.1, 19.8, 24.0, 25.8, 24.4, 19.3, 12.4, 4.1, -2.7] 
                    }, {
                       name: '活跃用户数',
                       data: strActivenum
                       // data: [13.3, 14.4, 17.7, 21.9, 24.6, 27.2, 30.8, 32.1, 27.2, 23.7, 21.3, 15.6]
                    }, {
                       name: '通话时长',
                       data: strCallingduration
                    }]
                  });
                }else{
                  $('#container1').hide();
                }
              }
            });
            
          }

          //                  var json={
          //                     flag: "000000",
          //                     desc: "",
          //                     data: {
          //                     items:[
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:1},
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:2},
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:3},
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:4},
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:5},
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:6},
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:7},
          //                     {regionname:"山东",carriernum:30,registernum:15,activenum:6,callingduration:20,index:8}
          //                     ],totalItemNum: 8
          //                    }};
          //                    dtUtil.successCallback(json, aoData, fnCallback);

        },
        "aoColumns" : [ {
          "sTitle" : "省市",
          "bSortable" : true,
          "mData" : "regionname"
        }, {
          "sTitle" : "注册用户数",
          "bSortable" : true,
          "mData" : "registernum"
        }, {
          "sTitle" : "活跃用户数",
          "bSortable" : true,
          "mData" : "activenum"
        }, {
          "sTitle" : "通话时长",
          "bSortable" : true,
          "mData" : "callingduration"
        } ],
        "fnDrawCallback" : function(oSettings) {
          // 表格绘制完成后，去除width属性，使表格可缩放
          $('#' + oSettings.sTableId).css("width", "");
          
          // 在各列的列名处添加小手
          $(".sorting").css("cursor","pointer");
          $(".sorting_asc").css("cursor","pointer");
          $(".sorting_desc").css("cursor","pointer");
        }
      });

      // 统计维度：应用分类
      new Table({
        attrs : {
          id : "applytype_table",
          isHovered : false,
          isStriped : true,
          isBordered : false
        },
        renderTo : param.applytype_divId

      });

      // 用于按应用分类进行分组统计
      var datatable_application = $('#applytype_table').dataTable({
        "sDom" : "<'hidden'<'span6'l><'hidden'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
        "bJQueryUI" : false,
        "oLanguage" : {
          "sUrl" : "/business/js/common/table/src/lang/dataTable.cn.txt"
        },
        "sPaginationType" : "bootstrap", // 分页自带两种样式，full_numbers和two_button(默认)
        'bPaginate' : true, // 是否分页
        "bProcessing" : true, // 当datatable获取数据时候是否显示正在处理提示信息。
        "bServerSide" : true, // 指定服务器端分页
        "bDeferRender" : true,
        "bFilter" : true,
        "bSort" : true,
        "bInfo" : true,
        "sAjaxSource" : "/data/queryByAppNameSimp.do", //queryByAppNameSimp
        "iDisplayLength" : DATATABLES_CONFIG.iDisplayLength.DEFAULT, // 默认分页的每页记录数
        "fnServerData" : function(sSource, aoData, fnCallback, oSettings) {

          var queryparam = dtUtil.convert_aoData(aoData);

          //拼接where查询条件
          var cond = getCondition();
          if (cond != '' && cond != null) {
            queryparam.q += cond;
          }

          if (type == "applytype") {
            // 添加自己的额外参数
            oSettings.jqXHR = $.ajax({
              "dataType" : 'json',
              "contentType" : "application/json;charset=UTF-8",
              "type" : "GET",
              "url" : sSource,
              "data" : queryparam, // 将请求数据转换为后台要求的JSON格式
              "success" : function(json) {
                //隐藏蒙版
                loader.noloading();
                dtUtil.successCallback(json, aoData, fnCallback);
                
                dataChart = json;
                // 获取拼接成json串
                var jsondata = dataChart.data;
                // 获取data中的items属性
                itemsPro = jsondata.items;
                
                var appCarriernum = [];// APP名称与企业数
                var appRegisternum = [];// APP名称与注册用户数
                var appActivenum = [];// APP名称与活跃用户数
                var appCallingduration = [];// APP名称与通话时长(分钟)
                
                // 格式化数据
                if(itemsPro[0] != null){
                  // 隐藏图表不存在的html
                  $('#data_error').hide();
                  
                  for(var i=0;i<itemsPro.length;i++){
                    var bean = itemsPro[i];
                    
                    appCarriernum.push([bean.applicationname,bean.carriernum]);
                    appRegisternum.push([bean.applicationname,bean.registernum]);
                    appActivenum.push([bean.applicationname,bean.activenum]);
                    appCallingduration.push([bean.applicationname,bean.callingduration]);
                  }
                  
                  // APP名称与企业数
                  new Highcharts.Chart({
                    chart: {
                      renderTo: 'container2',
                      plotBackgroundColor: null,
                      plotBorderWidth: null,
                      plotShadow: false
                    },
                    title: {
                        text: '统计图表-企业数'
                    },
                    tooltip: {
//                        pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b><b>数量：</b>'
                      formatter: function() {
                        return '<b>'+ this.point.name +'：</b><br>份额：<b>'+ Highcharts.numberFormat(this.percentage, 1) +'% </b><br>数量：<b>'+
                                     Highcharts.numberFormat(this.y, 0, ',') +' </b>';
                      }
                    },
                    plotOptions: {
                        pie: {
                            allowPointSelect: true,
                            cursor: 'pointer',
                            dataLabels: {
                                enabled: false
                            },
                            showInLegend: true
                        }
                    },
                    exporting: { 
                      enabled: false  //设置导出按钮不可用 
                    },
                    series: [{
                        type: 'pie',
                        name: '份额',
                        data: appCarriernum
                    }]
                  });
                  
                  // APP名称与注册用户数
                  new Highcharts.Chart({
                    chart: {
                      renderTo: 'container3',
                      plotBackgroundColor: null,
                      plotBorderWidth: null,
                      plotShadow: false
                    },
                    title: {
                        text: '统计图表-注册用户数'
                    },
                    tooltip: {
//                      pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
                      formatter: function() {
                        return '<b>'+ this.point.name +'：</b><br>份额：<b>'+ Highcharts.numberFormat(this.percentage, 1) +'% </b><br>数量：<b>'+
                                     Highcharts.numberFormat(this.y, 0, ',') +' </b>';
                      }
                    },
                    plotOptions: {
                        pie: {
                            allowPointSelect: true,
                            cursor: 'pointer',
                            dataLabels: {
                                enabled: false
                            },
                            showInLegend: true
                        }
                    },
                    exporting: { 
                      enabled: false  //设置导出按钮不可用 
                    },
                    series: [{
                        type: 'pie',
                        name: '份额',
                        data: appRegisternum
                    }]
                  });
                  
                  // APP名称与活跃用户数
                  new Highcharts.Chart({
                    chart: {
                      renderTo: 'container4',
                      plotBackgroundColor: null,
                      plotBorderWidth: null,
                      plotShadow: false
                    },
                    title: {
                        text: '统计图表-活跃用户数'
                    },
                    tooltip: {
                      formatter: function() {
                        return '<b>'+ this.point.name +'：</b><br>份额：<b>'+ Highcharts.numberFormat(this.percentage, 1) +'% </b><br>数量：<b>'+
                                     Highcharts.numberFormat(this.y, 0, ',') +' </b>';
                      }
                    },
                    plotOptions: {
                        pie: {
                            allowPointSelect: true,
                            cursor: 'pointer',
                            dataLabels: {
                                enabled: false
                            },
                            showInLegend: true
                        }
                    },
                    exporting: { 
                      enabled: false  //设置导出按钮不可用 
                    },
                    series: [{
                        type: 'pie',
                        name: '份额',
                        data: appActivenum
                    }]
                  });
                  // APP名称与通话时长(分钟)
                  new Highcharts.Chart({
                    chart: {
                      renderTo: 'container5',
                      plotBackgroundColor: null,
                      plotBorderWidth: null,
                      plotShadow: false
                    },
                    title: {
                        text: '统计图表-通话时长(分钟)'
                    },
                    credits: { 
                      //右下角不显示LOGO (HighCharts.com)
                        enabled: false
                    },
                    tooltip: {
//                      pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
                      formatter: function() {
                        return '<b>'+ this.point.name +'：</b><br>份额：<b>'+ Highcharts.numberFormat(this.percentage, 1) +'% </b><br>通话时长：<b>'+
                                     Highcharts.numberFormat(this.y, 0, ',') +' 分钟</b>';
                      }
                    },
                    plotOptions: {
                        pie: {
                            allowPointSelect: true,
                            cursor: 'pointer',
                            dataLabels: {
                                enabled: false
                            },
                            showInLegend: true
                        }
                    },
                    exporting: { 
                      enabled: false  //设置导出按钮不可用 
                    },
                    series: [{
                        type: 'pie',
                        name: '份额',
                        data: appCallingduration
                    }]
                  });
                }else{
                  $('#container2').hide();
                  $('#container3').hide();
                  $('#container4').hide();
                  $('#container5').hide();
                }
              
              }
            });

          }

        },
        "aoColumns" : [ {
          "sTitle" : "应用名称",
          "bSortable" : true,
          "mData" : "applicationname",
          "sWidth" : "20%"
        }, {
          "sTitle" : "企业数",
          "bSortable" : true,
          "mData" : "carriernum",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:15px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "注册用户数",
          "bSortable" : true,
          "mData" : "registernum",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:30px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "活跃用户数",
          "bSortable" : true,
          "mData" : "activenum",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:30px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "通话时长",
          "bSortable" : true,
          "mData" : "callingduration",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:25px;'>" + data + "</div>";
          }
        } ],
        "fnDrawCallback" : function(oSettings) {
          // 表格绘制完成后，去除width属性，使表格可缩放
          $('#' + oSettings.sTableId).css("width", "");
          
          // 在各列的列名处添加小手
          $(".sorting").css("cursor","pointer");
          $(".sorting_asc").css("cursor","pointer");
          $(".sorting_desc").css("cursor","pointer");
        }
      });

      // 统计维度：isv分类
      new Table({
        attrs : {
          id : "isv_table",
          isHovered : false,
          isStriped : true,
          isBordered : false
        },
        renderTo : param.isv_divId

      });

      // 用于按isv进行分组统计
      var datatable_isv = $('#isv_table').dataTable({
        "sDom" : "<'hidden'<'span6'l><'hidden'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
        "bJQueryUI" : false,
        "oLanguage" : {
          "sUrl" : "/business/js/common/table/src/lang/dataTable.cn.txt"
        },
        "sPaginationType" : "bootstrap", // 分页自带两种样式，full_numbers和two_button(默认)
        'bPaginate' : true, // 是否分页
        "bProcessing" : true, // 当datatable获取数据时候是否显示正在处理提示信息。
        "bServerSide" : true, // 指定服务器端分页
        "bDeferRender" : true,
        "bFilter" : true,
        "bSort" : true,
        "bInfo" : true,
        "sAjaxSource" : "/data/queryByIsvNameSimp.do", // queryByISVName
        "iDisplayLength" : DATATABLES_CONFIG.iDisplayLength.DEFAULT, // 默认分页的每页记录数
        "fnServerData" : function(sSource, aoData, fnCallback, oSettings) {

          var queryparam = dtUtil.convert_aoData(aoData);

          //拼接where查询条件
          var cond = getCondition();
          if (cond != '' && cond != null) {
            queryparam.q += cond;
          }

          if (type == "isv") {
            // 添加自己的额外参数
            oSettings.jqXHR = $.ajax({
              "dataType" : 'json',
              "contentType" : "application/json;charset=UTF-8",
              "type" : "GET",
              "url" : sSource,
              "data" : queryparam, // 将请求数据转换为后台要求的JSON格式
              "success" : function(json) {
                //隐藏蒙版
                loader.noloading();
                dtUtil.successCallback(json, aoData, fnCallback);

              }
            });
          }

        },
        "aoColumns" : [ {
          "sTitle" : "ISV名称",
          "bSortable" : true,
          "mData" : "isvname"
        }, {
          "sTitle" : "企业数",
          "bSortable" : true,
          "mData" : "carriernum",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:15px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "注册用户数",
          "bSortable" : true,
          "mData" : "registernum",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:30px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "活跃用户数",
          "bSortable" : true,
          "mData" : "activenum",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:30px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "通话时长",
          "bSortable" : true,
          "mData" : "callingduration",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:25px;'>" + data + "</div>";
          }
        }

        ],
        "fnDrawCallback" : function(oSettings) {
          // 表格绘制完成后，去除width属性，使表格可缩放
          $('#' + oSettings.sTableId).css("width", "");
          
          // 在各列的列名处添加小手
          $(".sorting").css("cursor","pointer");
          $(".sorting_asc").css("cursor","pointer");
          $(".sorting_desc").css("cursor","pointer");
        }
      });

      // 统计维度：企业
      new Table({
        attrs : {
          id : "carrier_table",
          isHovered : false,
          isStriped : true,
          isBordered : false
        },
        renderTo : param.carrier_divId

      });

      // 用于按企业进行分组统计
      var datatable_carrier = $('#carrier_table').dataTable({
        "sDom" : "<'hidden'<'span6'l><'hidden'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
        "bJQueryUI" : false,
        "oLanguage" : {
          "sUrl" : "/business/js/common/table/src/lang/dataTable.cn.txt"
        },
        "sPaginationType" : "bootstrap", // 分页自带两种样式，full_numbers和two_button(默认)
        'bPaginate' : true, // 是否分页
        "bProcessing" : true, // 当datatable获取数据时候是否显示正在处理提示信息。
        "bServerSide" : true, // 指定服务器端分页
        "bDeferRender" : true,
        "bFilter" : true,
        "bSort" : true,
        "bInfo" : true,
        "sAjaxSource" : "/data/queryByComSimp.do", //queryByCom
        "iDisplayLength" : DATATABLES_CONFIG.iDisplayLength.DEFAULT, // 默认分页的每页记录数
        "fnServerData" : function(sSource, aoData, fnCallback, oSettings) {

          var queryparam = dtUtil.convert_aoData(aoData);

          //拼接where查询条件
          var cond = getCondition();
          if (cond != '' && cond != null) {
            queryparam.q += cond;
          }

          query_param = queryparam.q;
          // 添加自己的额外参数

          if (type == "carrier") {
            oSettings.jqXHR = $.ajax({
              "dataType" : 'json',
              "contentType" : "application/json;charset=UTF-8",
              "type" : "GET",
              "url" : sSource,
              "data" : queryparam, // 将请求数据转换为后台要求的JSON格式
              "success" : function(json) {
                //隐藏蒙版
                loader.noloading();
                dtUtil.successCallback(json, aoData, fnCallback);
              }
            });
          }

        },
        "aoColumns" : [ {
          "sTitle" : "企业名称",
          "bSortable" : false,
          "mData" : "carriername",
          "sWidth" : "25%"
        }, {
          "sTitle" : "账号标识",
          "bSortable" : false,
          "mData" : "identify",
          "sWidth" : "25%"
        }, {
          "sTitle" : "注册用户数",
          "bSortable" : false,
          "mData" : "registernum",
          "sWidth" : "12%",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:30px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "活跃用户数",
          "bSortable" : false,
          "mData" : "activenum",
          "sWidth" : "12%",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:30px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "通话时长(分)",
          "bSortable" : false,
          "mData" : "callingduration",
          "sWidth" : "12%",
          "mRender" : function(data, type, full) {
            return "<div class='fontcir' style='margin-left:30px;'>" + data + "</div>";
          }
        }, {
          "sTitle" : "已消费赠送时长(分)",
          "bSortable" : false,
          "mData" : "consume_gift_amount",
          "sWidth" : "14%",
          "mRender" : function(data, type, full) {
//            return /*data%0.15==0?(data/0.15):*/Math.round(data / 0.15);
            return "<div class='fontcir' style='margin-left:30px;'>" + Math.round(data / 0.15) + "</div>";
          }
        }/*,

        {
          "sTitle" : "剩余赠送金额(元)",
          "bSortable" : false,
          "mData" : "gift_amount"
        }, {
          "sTitle" : "企业帐户金额(元)",
          "bSortable" : false,
          "mData" : "com_amount"
        }*/

        ],
        "fnDrawCallback" : function(oSettings) {
          // 表格绘制完成后，去除width属性，使表格可缩放
          $('#' + oSettings.sTableId).css("width", "");
          
          // 在各列的列名处添加小手
          $(".sorting").css("cursor","pointer");
          $(".sorting_asc").css("cursor","pointer");
          $(".sorting_desc").css("cursor","pointer");
        }
      });
      
      
      

      var type = "applytype";
      $('#btnByProvince').click(function() {
        $("#btnchart").text("统计图表");
        datatable_province.fnDraw();
        type = 'province';
        $('#applytype_div').hide();
        $("#isv_div").hide();
        $("#carrier_div").hide();
        $("#province_div").show();
        $('#container1').hide();
        $('#container2').hide();
        $('#container3').hide();
        $('#container4').hide();
        $('#container5').hide();
        $('#data_error').hide();
        // 显示按钮
        $("#btnchart").show();
//        document.getElementById('btnchart').style.display='';
        flagProvince="0";
        flagApplytype="2";
        flag="0";
        //蒙版
        loader.loading("数据加载中，请稍后……");
        datatable_province.fnDraw();
      });
      
      $('#btnByApplication').click(function() {
        $("#btnchart").text("统计图表");
        type = 'applytype';
        $('#applytype_div').show();
        $("#isv_div").hide();
        $("#carrier_div").hide();
        $("#province_div").hide();
        $('#container1').hide();
        $('#container2').hide();
        $('#container3').hide();
        $('#container4').hide();
        $('#container5').hide();
        $('#data_error').hide();
        // 显示按钮
        $("#btnchart").show();
//        document.getElementById('btnchart').style.display='';
        flagApplytype="0";
        flagProvince="2";
        flag="0";
        //蒙版
        loader.loading("数据加载中，请稍后……");
        datatable_application.fnDraw();
      });
      
      $('#btnByIsv').click(function() {
        type = 'isv';
        $('#applytype_div').hide();
        $("#isv_div").show();
        $("#carrier_div").hide();
        $("#province_div").hide();
        $('#container1').hide();
        $('#container2').hide();
        $('#container3').hide();
        $('#container4').hide();
        $('#container5').hide();
        // ISV的统计图表功能禁用，隐藏按钮
        $("#btnchart").hide();
        $('#data_error').hide();
//        document.getElementById('btnchart').style.display='none';
        flag="2";
        //蒙版
        loader.loading("数据加载中，请稍后……");
        datatable_isv.fnDraw();
      });
      
      $('#btnByCarrier').click(function() {
        type = 'carrier';
        $("#isv_div").hide();
        $('#applytype_div').hide();
        $("#carrier_div").show();
        $("#province_div").hide();
        $('#container1').hide();
        $('#container2').hide();
        $('#container3').hide();
        $('#container4').hide();
        $('#container5').hide();
        $('#data_error').hide();
        // 企业的统计图表功能禁用，隐藏按钮
        $("#btnchart").hide();
//        document.getElementById('btnchart').style.display='none';
        flag="2";
        //蒙版
        loader.loading("数据加载中，请稍后……");
        datatable_carrier.fnDraw();
      });
      
      // 统计图表按钮
      $('#btnchart').click(function() {
        if(itemsPro[0] != null){
          $('#data_error').hide();
          // 将界面信息显示在container1中
          if(flag=="0"){
            $("#btnchart").text("数据列表");
            flag="1";
            if(flagProvince=="0"){
              flagProvince="1";
              $('#container1').show();
            }else if(flagApplytype=="0"){
              flagApplytype="1";
              $('#container2').show();
              $('#container3').show();
              $('#container4').show();
              $('#container5').show();
            }
            $("#isv_div").hide();
            $('#applytype_div').hide();
            $("#carrier_div").hide();
            $("#province_div").hide();
          }else if(flag=="1"){
            $("#btnchart").text("统计图表");
            flag="0";
            if(flagProvince=="1"){
              $('#container1').hide();
              $("#province_div").show();
              flagProvince="0";
            }else if(flagApplytype=="1"){
              $('#container2').hide();
              $('#container3').hide();
              $('#container4').hide();
              $('#container5').hide();
              $('#applytype_div').show();
              flagApplytype="0";
            }
          }
        }else{
          
          /*if(flag=="0"){
            $("#btnchart").text("数据列表");
            flag="1";
            // 如果传入的数据为空，则显示以下文字；如果有时间的话，可以让美工设计一个图片，然后显示图片更美观
//            $('#data_error').html('<div><img src="img/login/logo.png" border="0"></div>');
            $('#data_error').html("<div class='fontcir' style='font-size:150%;color:red;margin-left:25px;'>" +
            		"对不起，您所查找的数据不存在，所以并未生成统计图，请您更换查询条件后，再次尝试</div>");
            $('#data_error').show();
            if(flagProvince=="0"){
              flagProvince="1";
            }else if(flagApplytype=="0"){
              flagApplytype="1";
            }
            $("#isv_div").hide();
            $("#isv_div").hide();
            $('#applytype_div').hide();
            $("#carrier_div").hide();
            $("#province_div").hide();
          }else if(flag=="1"){
            $("#btnchart").text("统计图表");
            flag="0";
            $('#data_error').hide();
            if(flagProvince=="1"){
              $("#province_div").show();
              flagProvince="0";
            }else if(flagApplytype=="1"){
              $('#applytype_div').show();
              flagApplytype="0";
            }
          }*/
          
          $('#container1').hide();
          $('#container2').hide();
          $('#container3').hide();
          $('#container4').hide();
          $('#container5').hide();
       // 如果传入的数据为空，则显示以下文字；如果有时间的话，可以让美工设计一个图片，然后显示图片更美观
//        $('#data_error').html('<div><img src="img/login/logo.png" border="0"></div>');
          $('#data_error').html("<div class='fontcir' style='font-size:150%;color:red;margin-left:25px;'>" +
            "对不起，您所查找的数据不存在，所以并未生成统计图，请您更换查询条件后，再次尝试</div>");
          $('#data_error').show();
        
        }
        
        return false;
      });

      //查询按钮
      $('#btnquery').click(function() {
        var startyear = $("#startyearid").val();
        var startmonth = $("#startmonthid").val();
        var endyear = $("#endyearid").val();
        var endmonth = $("#endmonthid").val();
        if (startyear > endyear) {
          bootbox.alert("所选起始年份大于终止年份，请重新选择！");
          return false;
        } else if (startyear == endyear) {
          if (startmonth > endmonth) {
            bootbox.alert("所选起始月份大于终止月份，请重新选择！");
            return false;
          }
        }

        datatable_province.fnDraw();
        datatable_application.fnDraw();
        datatable_isv.fnDraw();
        datatable_carrier.fnDraw();
        
        //蒙版
        loader.loading("数据加载中，请稍后……");
        return false;
      });
      
      // 重置按钮
      $('#restbtn').click(function() {
        //蒙版
        loader.loading("数据加载中，请稍后……");
        $('#isvName').select2("val", "");
        $('#applyName').select2("val", "");
        $('#carrierid').select2("val", "");
        daterangeCom.setRangeToToday();

        datatable_province.fnDraw();
        datatable_application.fnDraw();
        datatable_isv.fnDraw();
        datatable_carrier.fnDraw();
        
        return false;
      });

      var query_param;
      //查询按钮
      $('#btnexport').click(function() {

        // 添加自己的额外参数
        query_param += ("querytype=" + type + ";");

        $("#export_form").attr("action", "/data/exportCompany.do");
        $("#id_q").val(query_param);
        $("#export_form").submit();

        /*$.ajax(
         {
             "dataType" : 'json',
             "contentType" : "application/json;charset=UTF-8",
             "type" : "GET",
             "url" : "/data/exportCompany.do",
             "data" : query_param, // 将请求数据转换为后台要求的JSON格式
             "success" : function(json)
             {
               //dtUtil.successCallback(json, aoData, fnCallback);
             }
         });*/

        return false;
      });

    });

  };
});
